package day240124

import "fmt"

func Main1() {

	//s1 := []int{1, 2}
	//s2 := []int{3, 4, 5, 6}

	//长切片 复制 短 ，在坐标0开始赋值
	//copy(s2, s1)
	//fmt.Println(s1, s2) //[1 2] [1 2 5 6]

	//短切片 复制 长切片，不会扩容
	//copy(s1, s2)
	//fmt.Println(s1, s2) //[3 4] [3 4 5 6]

	//复制 其中一段
	//copy(s1, s2[1:3])
	//fmt.Println(s1, s2) //[4 5] [3 4 5 6]

	//使用copy 删除元素
	s := []int{1, 2, 3, 4, 5, 6}
	n := 2                     //要删除的元素
	newSlice := make([]int, n) //[0 0]
	fmt.Println(newSlice)      //[0 0]
	copy(newSlice, s[0:n])     //[1 2]
	fmt.Println(newSlice)      //[1 2]

	newSlice = append(newSlice, s[n+1:]...) //[1 2]从下标3 （下标3是4） 加到最后

	fmt.Println(s) //[1 2 3 4 5 6]

	fmt.Println(newSlice) //[1 2 4 5 6]
}
